package T01_要素一_Driver接口实现类;

/**
 *一、要素一:Driver 接口实现类
 *   1.Driver接口介绍
 *       ① java.sql.Driver 接口是所有JDBC驱动程序需要实现的接口.这个接口是提供给数据库厂商使用的,不同数据库厂商提供不同的实现。
 *       ② 在程序中不需要直接去访问实现了 Driver 接口的类，而是由驱动程序管理器类(java.sql.DriverManager)去调用这些Driver实现。
 *            >Oracle的驱动：oracle.jdbc.driver.OracleDriver
 *            >mySql的驱动： com.mysql.jdbc.Driver
 *   2.驱动拷贝到工程中
 *       ① 将上述jar包拷贝到Java工程的一个目录中，习惯上要求新建一个lib文件夹。
 *               图 1-1
 *       ② 在驱动jar上右键-->Build Path-->Add to Build Path
 *               图 1-2
 *       ③ 注意:如果是Dynamic Web Project（动态的web项目）的话
 *          则是把驱动jar放到WebContent（有的开发工具叫WebRoot）目录中的WEB-INF目录中的lib目录下即可
 *               图 1-3
 *   3.加载和注册驱动
 *       ① 加载驱动:加载 JDBC 驱动需调用 Class 类的静态方法 forName()，向其传递要加载的 JDBC 驱动的类名
 *               Class.forName(“com.mysql.jdbc.Driver”);
 *       ② 注册驱动：DriverManager 类是驱动程序管理器类，负责管理驱动程序
 *               1.使用DriverManager.registerDriver(com.mysql.jdbc.Driver)来注册驱动
 *               2.通常不用显式调用 DriverManager 类的 registerDriver() 方法来注册驱动程序类的实例，
 *                 因为 Driver 接口的驱动程序类都包含了静态代码块，在这个静态代码块中，
 *                 会调用 DriverManager.registerDriver() 方法来注册自身的一个实例。下图是MySQL的Driver实现类的源码
 *                       图 1-4
 *       ③ 注意:从 JDBC4.0 开始,目前已经普遍使用的版本,可以不用注册驱动而直接使用.Class.forName这句话可以省略。
 *                思考一个问题  为什么不需要加载注册驱动也能用
 */
public class DriverTest {
}
